import data.structure.TreeNode;

import java.util.ArrayList;
import java.util.List;

public class test24_10_31 {
    /*给定一个二叉树的根节点 root ，返回 它的 中序 遍历 。



示例 1：

输入：root = [1,2,3,4,5,null,8,null,null,6,7,9]
输出：[1,3,2]
*/
    public static void main(String[] args) {
         TreeNode root = new TreeNode(1);
         root.right = new TreeNode(2);
         root.right.left = new TreeNode(3);
         List<Integer> result = inorderTraversal(root);
         for (Integer integer : result) {
             System.out.print(integer + " ");
         }
    }

    public static List<Integer> inorderTraversal(TreeNode root) {
        List<Integer> res = new ArrayList<>();
        inorder(root,res);
        return res;
    }

    public static void inorder(TreeNode root, List<Integer> res){
        if(root == null)
            return;
        inorder(root.left,res);
        res.add(root.val);
        inorder(root.right,res);
    }
}
